package com.zjsru.plan2024.oneday;

import java.util.ArrayList;
import java.util.List;

/**
 * 3285. 找到稳定山的下标
 *
 * @Author: cookLee
 * @Date: 2024-12-19
 */
public class StableMountains {
    /**
     * 主
     * \
     * 如果它左侧相邻的山的高度 严格大于 threshold ，那么我们称它是 稳定 的
     * \
     * 输入：height = [1,2,3,4,5], threshold = 2
     * <p>
     * 输出：[3,4]
     * <p>
     * 解释：
     * <p>
     * 下标为 3 的山是稳定的，因为 height[2] == 3 大于 threshold == 2 。
     * 下标为 4 的山是稳定的，因为 height[3] == 4 大于 threshold == 2.
     * \
     * 输入：height = [10,1,10,1,10], threshold = 3
     * <p>
     * 输出：[1,3]
     * \
     *
     * @param args args
     */
    public static void main(String[] args) {
        StableMountains stableMountains = new StableMountains();
        int[] height = new int[]{1, 2, 3, 4, 5};
        int threshold = 2;
        System.out.println(stableMountains.stableMountains(height, threshold));
    }

    /**
     * 模拟
     *
     * @param height    高度
     * @param threshold 阈值
     * @return {@link List}<{@link Integer}>
     */
    public List<Integer> stableMountains(int[] height, int threshold) {
        int len = height.length;
        List<Integer> ans = new ArrayList<>();
        for (int i = 1; i < len; i++) {
            if (threshold < height[i - 1]) {
                ans.add(i);
            }
        }
        return ans;
    }

}
